// pages/classify/classify.js
let navid;
import {
  listNav,
  queryProduct
} from "../../api/apis"
Page({

  /**
   * 页面的初始数据
   */
  data: {
    navActive: 0,
    navList: [],
    proArr: [],
    loading: false,
    isData: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  async onLoad(options) {
    const {
      idx
    } = options
    await this.getNavList()
    if (idx) {
      this.navChange(idx)
    } else {
      // 把得到的数组第一个作为查询id
      navid = this.data.navList[0]._id;
      this.getProductList()
    }
  },
  async getNavList() {
    await listNav().then(res => {
      this.setData({
        navList: res.data
      })
    })
  },
  // 导航条切换
  navChange(e) {
    console.log(e);
    let index = e?.detail?.index ?? e;
    navid = this.data.navList[index]._id
    this.setData({
      proArr: [],
      isData: false,
      loading: false,
      navActive: Number(index)
    })
    this.getProductList()
  },
  // 获取产品列表
  getProductList(size = 0) {
    this.setData({
      loading: true
    })
    queryProduct({
      navid: navid ? navid : "63b9600be1a35c358c18483b",
      // 分页
      size
    }).then(res => {
      // 新旧数组合并
      const oldProArr = this.data.proArr
      const newProArr = oldProArr.concat(res.data)
      console.log(res);
      this.setData({
        proArr: newProArr,
        loading: false
      })
      if (res.total == this.data.proArr.length) {
        this.setData({
          isData: true
        })
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    // 传递分页长度为当前数组长度
    if (this.data.isData) {
      return
    }
    this.getProductList(this.data.proArr.length)
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})